Learning Java by Building Android Games: Learn Java and Android from scratch by building six exciting games
John Horton
eBook
(Packt Publishing, Aug. 29, 2018)
Get ready for a fun-filled experience of learning Java by developing games for the Android platformKey FeaturesLearn Java, Android, and object-oriented programming from scratchBuild games including Sub Hunter, Retro Pong, Bullet Hell, Classic Snake, and a 2D Scrolling ShooterCreate and design your own games, such as an open-world platform gameBook DescriptionAndroid is one of the most popular mobile operating systems presently. It uses the most popular programming language, Java, as the primary language for building apps of all types. However, this book is unlike other Android books in that it doesn’t assume that you already have Java proficiency.This new and expanded second edition of Learning Java by Building Android Games shows you how to start building Android games from scratch. The difficulty level will grow steadily as you explore key Java topics, such as variables, loops, methods, object oriented programming, and design patterns, including code and examples that are written for Java 9 and Android P.At each stage, you will put what you’ve learned into practice by developing a game. You will build games such as Minesweeper, Retro Pong, Bullet Hell, and Classic Snake and Scrolling Shooter games. In the later chapters, you will create a time-trial, open-world platform game.By the end of the book, you will not only have grasped Java and Android but will also have developed six cool games for the Android platform.What you will learnSet up a game development environment in Android StudioImplement screen locking, screen rotation, pixel graphics, and play sound effectsRespond to a player’s touch, and program intelligent enemies who challenge the player in different waysLearn game development concepts, such as collision detection, animating sprite sheets, simple tracking and following, AI, parallax backgrounds, and particle explosionsAnimate objects at 60 frames per second (FPS) and manage multiple independent objects using Object-Oriented Programming (OOP)Understand the essentials of game programming, such as design patterns, object-oriented programming, Singleton, strategy, and entity-component patternsLearn how to use the Android API, including Activity lifecycle, detecting version number, SoundPool API, Paint, Canvas, and Bitmap classesBuild a side-scrolling shooter and an open world 2D platformer using advanced OOP concepts and programming patternsWho this book is forLearning Java by Building Android Games is for you if you are completely new to Java, Android, or game programming and want to make Android games. This book also acts as a refresher for those who already have experience of using Java on Android or any other platform without game development experience.Table of ContentsJava, Android & GamesJava Basics & An Introduction to Object Oriented Programming - Starting the Sub Hunter GameJava Variables, Operators, Expressions and Android Debugging - Spawning a Sub to HuntMaking Decisions with Java If, Else & Switch - Getting the Player's InputThe Android Canvas Class, Drawing to The Screen - Firing Depth ChargesWhile, Do While, For Loops, Break & Continue - Enhancing Sub Hunter GameJava Methods - Finishing Sub Hunter GameObject Oriented Programming - Starting the Pong GameInterfaces, Threads & Exceptions - Coding the Pong Game LoopCoding a class for the player's bat & Handling InputCollisions, Sound FX and Supporting Different Android Versions - Finishing the Pong GameHandling LOTS of Objects with Arrays - Welcome to Bullet HELLDrawing with Bitmap Graphics - Coding the Player and Finishing the GameJava Collections, The Stack, the Heap & Garbage Collection - Starting the Snake GameUsing Java Enumerations - Building the Snake ClassAndroid Localization, Hola! - Building a Retro Game LoopFinishing the Snake GameMore Advanced OOP using Inheritance, Polymorphism & the Entity Component Pattern - Starting the Scrolling Shooter GameManaging Sound Better & Pausing the GameCoding The player's ship and Scrolling StarsPersisting Data & Finishing the GameUsing More Advanced OOP with Singleton Pattern & the AssetManager Class - Starting the Platformer GameViewing Huge Worlds Through a CameraImproving Performance with Object Pools & Animating with Sprite Sheets - Adding Enemies and BulletsHandling Multiple Screens & Communicating Between Objects - Finishing the Platform GameWhat next